home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / CADAR / Infinity / noergaard-infinity-series
Lisp/Scheme  |  1998-10-22  |  4KB  |  108 lines

  1. noergaard-infinity-series 
  2. length  interval &optional (step 1)
  3.  
  4. After attending courses at Darmstadt in the fifties
  5. Danish (nowadays topname) composer Per Noergaard
  6. went his own way.
  7. When most composers where into 12-tone composition
  8. in the Schoenberg/Webern tradition Noergaard invented his infinity-series. 
  9. This function lets you create such a series and 
  10. includes most of Noergaards first piece using the
  11. series: "Voyage into the golden screen."
  12. (title from a Donovan song) 
  13. There are no velocity or other information so it is
  14. just to show you how to make use of the series and
  15. how nicely the different transposed series fits
  16. together.
  17. You should view it in a score-program so you can
  18. see how the same series transposed differently
  19. and with different rhythms unison.
  20.  
  21. The series is constructed as follows: 
  22. it takes the interval of the first two notes, 
  23. inverts the interval an inserts it from the 
  24. first note.
  25. then inverts back again and insert it from the
  26. second last note.
  27. this way you will get a new interval that will be
  28. inverted and so on. . . 
  29.   
  30. You need to supply at least to notes to get a start
  31. interval. 
  32. this is the way the original series was made.
  33. you could supply more notes to make variants
  34. which Noergaard also did later.
  35. I think that he still uses the series together
  36. with what he call "golden rhythms" which are based
  37. on (you guessed it) the golden section.
  38. (/ (1- (sqrt 5)) 2)
  39.  
  40. The function also works with ratios so you can use
  41. it for rhythms or whatever.
  42.  
  43.  
  44.  
  45.  
  46. (noergaard-infinity-series 21 '(a b))
  47. ->(a b -b c b a -c d -b c a b c -b -d e b a -c d a)
  48.  
  49. (noergaard-infinity-series 34 '(0 1))
  50. ->(0 1 -1 2 1 0 -2 3 -1 2 0 1 2 -1 -3 4 1 0 -2 3 0 1 -1 2 -2 3 1 0 3 -2 -4 5 -1 2)
  51.  
  52. (noergaard-infinity-series 13 '(0 1)  120)
  53. ->(0 120 -120 240 120 0 -240 360 -120 240 0 120 240)
  54.  
  55. (noergaard-infinity-series 13 '(0 3) '1/32)
  56. ->(0 180 -180 360 180 0 -360 540 -180 360 0 180 360)
  57.  
  58. (noergaard-infinity-series 13 '(3/16 5/8) 2)
  59. ->(5/4 3/8 17/8 -1/2 3/8 5/4 3 -11/8 17/8 -1/2 5/4 3/8 -1/2)
  60.  
  61. (noergaard-infinity-series 13 '(0.2 1.6))
  62. ->(0.2 1.6 -1.2 3.0 1.6 0.2 -2.6 4.4 -1.2 3.0 0.2 1.6 3.0)
  63.  
  64. (noergaard-infinity-series 21 '(a g -b))
  65. ->(a g -b a f h -c g -b b e -b g i -d a f h -c f a)
  66.  
  67.  
  68. Here is an simplified extract from "Voyage into the golden
  69. screen" from 1968-1969:
  70.  
  71. (def-zone default '(124/1))
  72.  
  73. (def-length flauti '(1/8))
  74. (def-length corni '(1/2))
  75. (def-length oboe (append '(-1/4.) 
  76.                             (gen-repeat 248 '(1/4. -1/8))))
  77. (def-length clarinetto (append '(-1/8) 
  78.                                   (gen-repeat 496 '(1/4))))
  79. (def-length fagotto '(-1/2. 5/4))
  80. (def-length arpa (append '(-7/8) 
  81.                             (gen-repeat 112 '(5/8 -3/8))))
  82. (def-length (violini viole) '(-1/4 15/4))
  83. (def-length trombe (append '(-63/8) 
  84.                               (symbol-trim 31 '(23/8 -41/8))))
  85. (def-length (trombono campane piano) (append '(-255/8)
  86.                                                 (symbol-trim 7 '(1/2 -252/8))))
  87.  
  88. (setq series (noergaard-infinity-series 1024 '(a b)))
  89.  
  90. (def-symbol (flauti corni) series)
  91. (def-symbol oboe (symbol-transpose 2 series))
  92. (def-symbol clarinetto (symbol-transpose 1 series))
  93. (def-symbol fagotto (symbol-transpose -2 series))
  94. (def-symbol arpa (symbol-transpose 3 series))
  95. (def-symbol (violini viole) (symbol-transpose -1 series))
  96. (def-symbol trombe (symbol-transpose 6 series))
  97. (def-symbol (trombono campane) (symbol-transpose 8 series))
  98. (def-symbol piano (symbol-transpose 20 series))
  99.  
  100.  
  101.  
  102. (def-tonality default (activate-tonality (chromatic g 5)))
  103.  
  104. (compile-instrument "ccl;output:" "Voyage into the golden screen"
  105.   flauti oboe clarinetto fagotto corni trombe trombono campane arpa piano violini viole
  106. )
  107.  
  108.